﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;


namespace FrbaCommerce.Abm_Visibilidad
{
    public partial class frm_visibilidades : Form
    {
        public frm_visibilidades()
        {
            InitializeComponent();
        }

        private void frm_visibilidades_Load(object sender, EventArgs e)
        {

        }

        private void dgv_visibilidades_RowEnter(object sender, DataGridViewCellEventArgs e)
        {
            btn_modificar.Enabled = true;
            btn_eliminar.Enabled = true;
        }

        private void btn_buscar_Click(object sender, EventArgs e)
        {
            BaseDeDatos baseDeDatos = BaseDeDatos.Instance;
            SqlCommand sqlCommand = new SqlCommand();
            sqlCommand.CommandText = "LOS_GDDES.SP_BUSCAR_VISIBILIDAD";
            sqlCommand.CommandType = CommandType.StoredProcedure;
            if (txt_codVisibilidad.Text != "")
                sqlCommand.Parameters.AddWithValue("@codigo", Convert.ToDecimal(txt_codVisibilidad.Text));
            if (txt_descripVisibilidad.Text != "")
                sqlCommand.Parameters.AddWithValue("@descripcion", txt_descripVisibilidad.Text);
            
            DataTable dt_visibilidades = baseDeDatos.consulta(sqlCommand);
            dgv_visibilidades.DataSource = dt_visibilidades;

            dgv_visibilidades.Columns[0].Visible = false;
        }

        private void btn_limpiar_Click(object sender, EventArgs e)
        {
            gb_filtrosBusqueda.Controls.OfType<TextBox>().ToList().ForEach(textBox => textBox.Text = String.Empty);
        }

        private void btn_crear_Click(object sender, EventArgs e)
        {
            frm_crearVisibilidad frm_crearVisibilidad = new frm_crearVisibilidad();
            frm_crearVisibilidad.ShowDialog();
            this.btn_buscar_Click(sender, e);
        }

        private void btn_modificar_Click(object sender, EventArgs e)
        {
            if (dgv_visibilidades.CurrentRow != null)
            {
                frm_modificarVisibilidad frm_modificarVisibilidad = new frm_modificarVisibilidad((dgv_visibilidades.CurrentRow.DataBoundItem as DataRowView).Row);
                frm_modificarVisibilidad.ShowDialog();
                this.btn_buscar_Click(sender, e);
            }
        }

        private void btn_eliminar_Click(object sender, EventArgs e)
        {
            if (dgv_visibilidades.CurrentRow != null)
            {
                DataRow dr_visibilidad = (dgv_visibilidades.CurrentRow.DataBoundItem as DataRowView).Row;
                BaseDeDatos baseDeDatos = BaseDeDatos.Instance;
                SqlCommand sqlCommand = new SqlCommand();
                sqlCommand.CommandText = "LOS_GDDES.SP_BAJA_LOGICA_VISIBILIDAD";
                sqlCommand.CommandType = CommandType.StoredProcedure;
                sqlCommand.Parameters.AddWithValue("@id_visibilidad", dr_visibilidad.Field<Decimal>("ID_VISIBILIDAD"));
                baseDeDatos.ejecuta(sqlCommand);
                this.btn_buscar_Click(sender, e);
            }
        }
    }
}

